analyze-code:
	cargo clippy

format:
	cargo fmt

build:
	cargo build

test-lib: analyze-code format
	cargo test -- --nocapture

build-docker-image-c:
	sudo docker build --progress=plain --no-cache --tag dym/c/passing-and-returning-integers-app --file Dockerfile_c .

build-docker-image-python:
	sudo docker build --progress=plain --no-cache --tag dym/python/passing-and-returning-integers-app --file Dockerfile_py .

build-docker-image-js:
	sudo docker build --progress=plain --no-cache --tag dym/js/passing-and-returning-integers-app --file Dockerfile_js .

build-docker-image-csharp:
	sudo docker build --progress=plain --no-cache --tag dym/csharp/passing-and-returning-integers-app --file Dockerfile_csharp .

build-docker-images: build-docker-image-c build-docker-image-python build-docker-image-js build-docker-image-csharp

remove-docker-images:
	-sudo docker image rm dym/c/passing-and-returning-integers-app
	-sudo docker image rm dym/python/passing-and-returning-integers-app
	-sudo docker image rm dym/js/passing-and-returning-integers-app
	-sudo docker image rm dym/csharp/passing-and-returning-integers-app

clean: remove-docker-images
	cargo clean
